<?php
/**
*
* example目录下为简单的支付样例，仅能用于搭建快速体验微信支付使用
* 样例的作用仅限于指导如何使用sdk，在安全上面仅做了简单处理， 复制使用样例代码时请慎重
* 请勿直接直接使用样例对外提供服务
* 
**/

require_once "../lib/WxPay.Api.php";
require_once "WxPay.NativePay.php";
require_once 'log.php';

//初始化日志
$logHandler= new CLogFileHandler("logs/".date('Y-m-d').'.log');
$log = Log::Init($logHandler, 15);

//模式一
//官方不再提供模式一支付方式

$notify = new NativePay();

//模式二
/**
 * 流程：
 * 1、调用统一下单，取得code_url，生成二维码
 * 2、用户扫描二维码，进行支付
 * 3、支付完成之后，微信服务器会通知支付成功
 * 4、在支付成功通知中需要查单确认是否真正支付成功（见：notify.php）
 */

$out_trade_no = "vbyzc_for_jstx".date("YmdHis"); 
$input = new WxPayUnifiedOrder();
$input->SetBody("test_body");
$input->SetAttach("test_Attach");//成功支付的回调里会返回这个
$input->SetOut_trade_no($out_trade_no);//自定义订单号
$input->SetTotal_fee("1"); // 金额
$input->SetTime_start(date("YmdHis"));
// $input->SetTime_expire(date("YmdHis", time() + 500));
$input->SetGoods_tag("test_goodsTag");
$input->SetNotify_url("https://service.ktfqs.com/example/wx_pay_callback.php");
$input->SetTrade_type("NATIVE");
$input->SetProduct_id("123456789"); //此id为二维码中包含的商品ID，商户自行定义。

$result = $notify->GetPayUrl($input);
$url2 = $result["code_url"];

echo "<div>$url2</div>";
// print_r($result);
?>

<html>
<head>
    <meta http-equiv="content-type" content="text/html;charset=utf-8"/>
    <meta name="viewport" content="width=device-width, initial-scale=1" /> 
	<title>扫码支付</title>
	<script src="https://cdn.bootcss.com/jquery/1.12.4/jquery.min.js"></script>
</head>
<body>

	<div style="margin-left: 10px;color:#556B2F;font-size:30px;font-weight: bolder;">扫描支付模式二</div><br/>
	<div> 订单编号<input id="out_trade_no" type="text"  value="<?php echo $out_trade_no;?>" size="100"> </div>
	<img alt="模式二扫码支付" src="qrcode.php?data=<?php echo urlencode($url2);?>" style="width:150px;height:150px;"/>
	<div>支付提示:<span id="query_result" style="color: red">WAITING...</span></div>
	<script>
		var t1;
		var sum=0;
		$(document).ready(function () {
			t1=setInterval("ajaxstatus()", 4000);
		});
		var OUT_TRADE_NO = $("#out_trade_no").val() ;
		ajaxstatus();//先执行一次
		function ajaxstatus() {
			sum++;
			if(sum>100){ window.clearInterval(t1);return false;}
			if (OUT_TRADE_NO!= 0) {
				$.post("orderqueryajax.php", { out_trade_no:OUT_TRADE_NO }, function (data) {
					data = $.trim(data);
					$("#query_result").html(data);
					if (data=="SUCCESS") {
						$("#query_result").html("订单号"+OUT_TRADE_NO+"支付成功,即将跳转...");
						window.clearInterval(t1)
						<?php
							// 插入php代码
							/*
							if (isset($_POST['history_go']) && $_POST['history_go'] == 3){
								echo 'window.setTimeout("history.go(-3);",2000);';
							}else{
								echo 'window.setTimeout("history.go(-2);",2000);';
							}
							*/
						?>
					}
				});
			}
		}
	</script>
</body>
</html>